﻿using System;
using System.Collections.Generic;
using System.Text;
using System.Security;
using System.Runtime.InteropServices;

namespace System.Peppers.ShellExtensions
{
    [SuppressUnmanagedCodeSecurity, ComImport, InterfaceType(ComInterfaceType.InterfaceIsIUnknown), Guid("0000010e-0000-0000-C000-000000000046")]
    internal interface IDataObject
    {
        [PreserveSig]
        int GetData(ref FORMATETC a, ref STGMEDIUM b);
        [PreserveSig]
        void GetDataHere(int a, ref STGMEDIUM b);
        [PreserveSig]
        int QueryGetData(int a);
        [PreserveSig]
        int GetCanonicalFormatEtc(int a, ref int b);
        [PreserveSig]
        int SetData(int a, int b, int c);
        [PreserveSig]
        int EnumFormatEtc(uint a, ref Object b);
        [PreserveSig]
        int DAdvise(int a, uint b, Object c, ref uint d);
        [PreserveSig]
        int DUnadvise(uint a);
        [PreserveSig]
        int EnumDAdvise(ref Object a);
    }
}
